package models;

import java.util.List;

import javax.persistence.*;


import play.data.validation.Constraints.Required;
import play.db.ebean.Model;

@Entity
@Table(name="utilisateur")
public class Utilisateur extends Model {

	@Id
    public Long id_utilisateur;
    public String pseudo_utilisateur;
    public String mdp_utilisateur;
    public String nom_utilisateur;
    public String adresse_utilisateur;
    public String tel_utilisateur;    
    @ManyToOne
    public Role role_utilisateur;
    
    /*
     * Méthodes
     */
    public static Finder<Long, Utilisateur> find = new Finder<Long, Utilisateur>(
			Long.class, Utilisateur.class);

    public Role getRole_utilisateur() {
		return role_utilisateur;
	}

	public void setRole_utilisateur(Role role_utilisateur) {
		this.role_utilisateur = role_utilisateur;
	}

    public static List<Utilisateur> findAll() {
        return find.all();
    }

    public static Utilisateur findByPseudo(String pseudo) {
        return find.where().eq("pseudo_utilisateur", pseudo).findUnique();
    }
        
    public String toString() {
		return "Utilisateur(" + pseudo_utilisateur + " : " + nom_utilisateur + ")";
	}

	public static Utilisateur authentification(String pseudo, String mdp) {
		return find.where()
		 .eq("pseudo_utilisateur", pseudo)
		 .eq("mdp_utilisateur", mdp)
		 .findUnique();
	}
}
